package com.sqx.modules.tbOrders.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
@ApiModel("complaint")
public class SysComplaint implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    /**
     * 投诉id
     */
    @ApiModelProperty("投诉id")
    private Long complaintId;

    /**
     * 投诉人id
     */
    @ApiModelProperty("投诉人id")
    private Long userId;

    /**
     * 订单类型 0回收订单 1普通商品订单 2商品投诉 3聊天投诉
     */
    @ApiModelProperty("订单类型 0回收订单 1普通商品订单 2商品投诉 3聊天投诉")
    private Integer orderType;

    /**
     * 订单号
     */
    @ApiModelProperty("订单号")
    private String orderNumber;

    /**
     * 被投诉人id
     */
    @ApiModelProperty("被投诉人id")
    private Long defendantUserId;

    /**
     * 投诉类型id
     */
    @ApiModelProperty("投诉类型id")
    private Long illegalId;

    /**
     * 扣款金额
     */
    @ApiModelProperty("扣款金额")
    private BigDecimal deductMoney;

    /**
     * 违规说明
     */
    @ApiModelProperty("违规说明")
    private String wrongExplain;

    /**
     * 投诉时间
     */
    @ApiModelProperty("投诉时间")
    private String complaintTime;

    /**
     * 城市id
     */
    @ApiModelProperty("城市id")
    private Long cityId;


    /**
     * 本投诉状态（1可申诉；2申诉中；3申诉未通过；4申诉通过；5用户发起投诉；6用户投诉被拒绝）
     */
    @ApiModelProperty("本投诉状态（1可申诉；2申诉中；3申诉未通过；4申诉通过；5用户发起投诉；6用户投诉被拒绝）")
    private Integer complaintState;

    /**
     * 管理员审核理由
     */
    @ApiModelProperty("管理员审核理由")
    private String auditMessage;

    /**
     * 申诉理由
     */
    @ApiModelProperty("申诉理由")
    private String appealMessage;


    /**
     * 申诉时间
     */
    @ApiModelProperty("申诉时间")
    private String appealTime;

    /**
     * 投诉的图片
     */
    @ApiModelProperty("投诉的图片")
    private String complaintImg;

    /**
     * 违规名称
     */
    @ApiModelProperty("违规名称")
    @TableField(exist = false)
    private String illegal;

    /**
     * 城市名称
     */
    @ApiModelProperty("城市名称")
    @TableField(exist = false)
    private String cityName;

    /**
     * 投诉人用户名
     */
    @ApiModelProperty("投诉人用户名")
    @TableField(exist = false)
    private String userName;

    @ApiModelProperty("投诉人头像")
    @TableField(exist = false)
    private String userImg;

    /**
     * 被投诉人头像
     */
    @ApiModelProperty("被投诉人头像")
    @TableField(exist = false)
    private String defendantUserImg;

    /**
     * 被投诉人用户名
     */
    @ApiModelProperty("被投诉人用户名")
    @TableField(exist = false)
    private String defendantUserName;

    /**
     * 商品id
     */
    @ApiModelProperty("商品id")
    @TableField(exist = false)
    private Long goodId;

    public SysComplaint() {
    }
}